/*** 本文件由HaivDb4J2ee工具辅助生成，版本1.3.1 ***/

package com.ce.sys.dict.logic.search;

import com.ce.framework.datamaintain.logic.ISQLMapper;
import com.ce.framework.datamaintain.logic.SQLSearchCondition;
import com.ce.framework.exception.AppException;
import com.ce.framework.util.StringUtil;
import com.ce.sys.dict.view.SysDictItemView;

import java.sql.ResultSet;
import java.sql.SQLException;

/**
* 嫦娥软件有限公司 版权所有 2013
* 创建人：　andy
* 创建日期：2010-09-14
* 创建时间：15:04:37
* 功能描述：字典从表 [SYS_T_DICT$ITEM]条件过滤类
* ==============================================
* 修改历史
* 修改人		修改时间		修改原因
*
* ==============================================
*/
public class SysDictItemSearchCondition  extends SQLSearchCondition
	implements ISQLMapper
{
	private String mid; //主表主键



	
	public Object fromSQLQuery(ResultSet rs, int num) {
		SysDictItemView view = new SysDictItemView();
		try {

			view.setVcId(rs.getString("VC_ID"));
			view.setVcMId(rs.getString("VC_M$ID"));
			view.setVcItemNumber(rs.getString("VC_ITEM$NUMBER"));
			view.setVcItemName(rs.getString("VC_ITEM$NAME"));
			view.setVcItemNote(StringUtil.isBlank(rs.getString("VC_ITEM$NOTE"))?"":rs.getString("VC_ITEM$NOTE"));
			view.setVcOrgId(rs.getString("VC_ORG$ID"));
			view.setVcOrgTypeFlag(rs.getString("VC_ORG$TYPE$FLAG"));
			view.setNseq(rs.getInt("N_SEQ"));
			view.setDtCreate(rs.getDate("DT_CREATE"));
			view.setVcDelFlag(rs.getInt("VC_DEL$FLAG"));
			view.setVcName(rs.getString("VC_NAME"));

		} catch (SQLException e) {
			
			e.printStackTrace();
		}
		return view;
	}
	
	public ISQLMapper getSQLMapper() {
		
		return this;
	}

	public String getMid() {
		return mid;
	}

	public void setMid(String mid) {
		this.mid = mid;
	}

	/**
	 * 开发人： andy
	 * 开发时间： 2013-11-3 下午04:22:28
	 * 功能描述：生成查询条件的sql语句
	 * 方法的参数和返回值
	 *
	 * @return
	 * @throws AppException String
	 *                      ==================================
	 *                      修改历史
	 *                      修改人        修改时间      修改原因及内容
	 *                      <p>
	 *                      ==================================
	 */
	@Override
	public String getSearchSql() throws AppException {

		String sql = "select t.*,m.VC_NAME from SYS_T_DICT$ITEM t,SYS_T_DICT$M m where t.vc_m$id = m.vc_id(+) and  t.VC_DEL$FLAG = 0 ";
		if(StringUtil.isNotBlank(this.mid)){
			sql = sql + " and t.VC_M$ID = '"+this.mid+"'";
		}
		if(StringUtil.isNotBlank(this.order)){
			if(StringUtil.isNotBlank(this.sort)&&"nseq".equals(this.sort))
				sql = sql + "order by t.N_SEQ "+this.order;
			if(StringUtil.isNotBlank(this.sort)&&"vcItemNumber".equals(this.sort))
				sql = sql + "order by t.VC_ITEM$NUMBER "+this.order;
			if(StringUtil.isNotBlank(this.sort)&&"vcItemName".equals(this.sort))
				sql = sql + "order by t.VC_ITEM$NAME "+this.order;
		}else{
			sql = sql + "order by t.N_SEQ asc , t.DT_CREATE desc";
		}
		return sql;
	}
}

